package org.dromara.system.service;

import org.dromara.system.domain.WbProductCategory;
import org.dromara.system.domain.vo.WbProductCategoryVo;
import org.dromara.system.domain.bo.WbProductCategoryBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;

import java.util.Collection;
import java.util.List;

/**
 * 产品类别Service接口
 *
 * @author Lion Li
 * @date 2024-03-22
 */
public interface IWbProductCategoryService {

    /**
     * 查询产品类别
     */
    WbProductCategoryVo queryById(Long categoryId);

    /**
     * 查询产品类别列表
     */
    TableDataInfo<WbProductCategoryVo> queryPageList(WbProductCategoryBo bo, PageQuery pageQuery);

    /**
     * 查询产品类别列表
     */
    List<WbProductCategoryVo> queryList(WbProductCategoryBo bo);

    /**
     * 新增产品类别
     */
    Boolean insertByBo(WbProductCategoryBo bo);

    /**
     * 修改产品类别
     */
    Boolean updateByBo(WbProductCategoryBo bo);

    /**
     * 校验并批量删除产品类别信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}
